// pages/profile/profile.js
const app = getApp();

Page({
  data: {
    userInfo: null,
    loading: false,
    version: '1.0.0'
  },

  onLoad() {
    console.log('个人资料页面加载');
    this.loadUserInfo();
  },

  onShow() {
    console.log('个人资料页面显示');
    // 刷新用户信息
    this.loadUserInfo();
  },

  // 加载用户信息
  loadUserInfo() {
    const userInfo = app.globalData.userInfo;
    if (userInfo) {
      this.setData({
        userInfo: userInfo
      });
    }
  },

  // 编辑个人信息
  editProfile() {
    wx.navigateTo({
      url: '/pages/profile/edit'
    });
  },

  // 修改密码
  changePassword() {
    wx.navigateTo({
      url: '/pages/profile/password'
    });
  },

  // 查看通知设置
  notificationSettings() {
    wx.navigateTo({
      url: '/pages/profile/notification'
    });
  },

  // 查看隐私设置
  privacySettings() {
    wx.navigateTo({
      url: '/pages/profile/privacy'
    });
  },

  // 清除缓存
  async clearCache() {
    const confirmed = await app.showConfirm('清除缓存', '确认清除所有缓存数据？');
    if (!confirmed) return;

    this.setData({ loading: true });
    app.showLoading('清除中...');

    try {
      // 清除本地存储
      wx.clearStorageSync();
      
      // 重新保存用户信息
      if (app.globalData.token && app.globalData.userInfo) {
        wx.setStorageSync('token', app.globalData.token);
        wx.setStorageSync('userInfo', app.globalData.userInfo);
      }

      app.showSuccess('缓存已清除');
    } catch (err) {
      console.error('清除缓存失败:', err);
      app.showError('清除失败，请重试');
    } finally {
      this.setData({ loading: false });
      app.hideLoading();
    }
  },

  // 检查更新
  checkUpdate() {
    app.showLoading('检查中...');

    // 模拟检查更新
    setTimeout(() => {
      app.hideLoading();
      wx.showModal({
        title: '检查更新',
        content: '当前已是最新版本',
        showCancel: false
      });
    }, 2000);
  },

  // 关于我们
  aboutUs() {
    wx.navigateTo({
      url: '/pages/profile/about'
    });
  },

  // 帮助中心
  helpCenter() {
    wx.navigateTo({
      url: '/pages/profile/help'
    });
  },

  // 意见反馈
  feedback() {
    wx.navigateTo({
      url: '/pages/profile/feedback'
    });
  },

  // 退出登录
  async logout() {
    const confirmed = await app.showConfirm('退出登录', '确认退出登录？');
    if (!confirmed) return;

    this.setData({ loading: true });
    app.showLoading('退出中...');

    try {
      // 调用退出登录API
      await app.request({
        url: '/api/auth/logout',
        method: 'POST'
      });
    } catch (err) {
      console.error('退出登录API调用失败:', err);
    } finally {
      // 清除本地数据
      app.clearLoginInfo();
      
      app.hideLoading();
      this.setData({ loading: false });
      
      // 跳转到登录页
      wx.reLaunch({
        url: '/pages/login/login'
      });
    }
  },

  // 联系客服
  contactService() {
    wx.makePhoneCall({
      phoneNumber: '400-123-4567'
    });
  },

  // 分享应用
  shareApp() {
    wx.showShareMenu({
      withShareTicket: true,
      menus: ['shareAppMessage', 'shareTimeline']
    });
  },

  // 复制用户ID
  copyUserId() {
    const { userInfo } = this.data;
    if (userInfo && userInfo.id) {
      wx.setClipboardData({
        data: userInfo.id.toString(),
        success: () => {
          app.showSuccess('用户ID已复制');
        }
      });
    }
  }
}); 